{8}{15}{16}样式转换成8 15 16

来源:百度知道 编辑:UC知道 时间:2024/05/27 00:26:00
并非简单的replace,解释下:
比如说String tagid = "{8}{15}{16}";
//操作方法
....

//得到一个List,封装里面的数值:8 15 16
for(int i=0;i<li.size;i++){
System.o.p(list.get(i));
}

输出结果为:
8
15
16

我现在想知道怎么个操作方法?
建议用正则表达式来操作,逻辑的也可!
并非只可能是{8}{15}{16}三个数的!还可以是4个5个,或者一个没有

String tagid = "{8}{15}{16}{20}{22}{25}";
List<Integer> lst = new ArrayList<Integer>();
Pattern p = Pattern.compile("\\{(\\d+)\\}");
Matcher m = p.matcher(tagid);
while (m.find()) {
lst.add(Integer.parseInt(m.group(1)));
}

for (int num : lst) {
System.out.println(num);
}

package com;

import java.util.ArrayList;
import java.util.List;

public class TestList {

/**
* @param args
*/
private void start() {
List list = new ArrayList();
String str = "{8}{15}{16}";
String first = str.substring(1, 2);
list.add(first);
String two = str.substring(4, 6);
list.add(two);
String three = str.substring(8,10);
list.add(three);
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
}

publi